﻿Imports System.Reflection

''' <summary>
''' This attribute indicates that a method is a command action method.  Methods with this attribute
''' must have a signature containing a single parameter of type CommandLine and a Void result.
''' This attribute optionally allows alternate command keywords and help text to be specified.  Alternate
''' command keywords can be entered as a comma-delimited list of identifiers.
''' </summary>
<AttributeUsage(AttributeTargets.Method, AllowMultiple:=False)>
Public Class CommandMethod
    Inherits Attribute

    Public ReadOnly AlternateNames As String
    Public ReadOnly HelpCaption As String
    Public ReadOnly HelpDescription As String

    Public Sub New(Optional AltNames As String = "",
                   Optional Caption As String = "",
                   Optional Description As String = "")
        AlternateNames = AltNames
        HelpCaption = Caption
        HelpDescription = Description
    End Sub

End Class
